package com.kws.tool.entity;

import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;
import java.util.Date;

/**
 * <b>TbNormManagement</b>
 *
 * @description: TbNormManagement <br>
 * @date: 2024/11/20 19:08 <br>
 * @author: lhm <br>
 * @version: 1.0 <br>
 */
public class TbNormManagement implements Serializable {
    @ApiModelProperty(value = "主键ID")
    @TableId(type = IdType.AUTO)
    private Long id;

    @ApiModelProperty(value = "规范编号")
    private String normNo;

    @ApiModelProperty(value = "规范名称")
    private String normName;

    @ApiModelProperty(value = "发布机构")
    private String issuingInstitution;

    @ApiModelProperty(value = "发布时间")
    private Date issuingTime;

    @ApiModelProperty(value = "实施时间")
    private Date implementTime;

    @ApiModelProperty(value = "有效期")
    private Date effectiveTime;

    @ApiModelProperty(value = "规范类型")
    private String normType;

    @ApiModelProperty(value = "适用领域")
    private String fieldUse;

    @ApiModelProperty(value = "规范状态")
    private String normStatus;

    @ApiModelProperty(value = "规范封面地址")
    private String normCoverUrl;

    @ApiModelProperty(value = "规范文件地址")
    private String normFileUrl;

    @ApiModelProperty(value = "浏览量")
    private Integer pageView;

    @ApiModelProperty(value = "可用状态：0-不可用，1-可用")
    private String enable;

    @ApiModelProperty(value = "创建用户")
    private String createUser;

    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    @ApiModelProperty(value = "修改用户")
    private String updateUser;

    @ApiModelProperty(value = "修改时间")
    private Date updateTime;

    private static final long serialVersionUID = 1L;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getNormNo() {
        return normNo;
    }

    public void setNormNo(String normNo) {
        this.normNo = normNo;
    }

    public String getNormName() {
        return normName;
    }

    public void setNormName(String normName) {
        this.normName = normName;
    }

    public String getIssuingInstitution() {
        return issuingInstitution;
    }

    public void setIssuingInstitution(String issuingInstitution) {
        this.issuingInstitution = issuingInstitution;
    }

    public String getIssuingTime() {
        return DateUtil.format(issuingTime,DatePattern.NORM_DATETIME_FORMATTER);
    }

    public void setIssuingTime(Date issuingTime) {
        this.issuingTime = issuingTime;
    }

    public String getImplementTime() {
        return DateUtil.format(implementTime,DatePattern.NORM_DATETIME_FORMATTER);
    }

    public void setImplementTime(Date implementTime) {
        this.implementTime = implementTime;
    }

    public String getEffectiveTime() {
        return DateUtil.format(effectiveTime,DatePattern.NORM_DATETIME_FORMATTER);
    }

    public void setEffectiveTime(Date effectiveTime) {
        this.effectiveTime = effectiveTime;
    }

    public String getNormType() {
        return normType;
    }

    public void setNormType(String normType) {
        this.normType = normType;
    }

    public String getFieldUse() {
        return fieldUse;
    }

    public void setFieldUse(String fieldUse) {
        this.fieldUse = fieldUse;
    }

    public String getNormStatus() {
        return normStatus;
    }

    public void setNormStatus(String normStatus) {
        this.normStatus = normStatus;
    }

    public String getNormCoverUrl() {
        return normCoverUrl;
    }

    public void setNormCoverUrl(String normCoverUrl) {
        this.normCoverUrl = normCoverUrl;
    }

    public String getNormFileUrl() {
        return normFileUrl;
    }

    public void setNormFileUrl(String normFileUrl) {
        this.normFileUrl = normFileUrl;
    }

    public Integer getPageView() {
        return pageView;
    }

    public void setPageView(Integer pageView) {
        this.pageView = pageView;
    }

    public String getEnable() {
        return enable;
    }

    public void setEnable(String enable) {
        this.enable = enable;
    }

    public String getCreateUser() {
        return createUser;
    }

    public void setCreateUser(String createUser) {
        this.createUser = createUser;
    }

    public String getCreateTime() {
        return DateUtil.format(createTime, DatePattern.NORM_DATETIME_FORMATTER);
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public String getUpdateUser() {
        return updateUser;
    }

    public void setUpdateUser(String updateUser) {
        this.updateUser = updateUser;
    }

    public String getUpdateTime() {
        return DateUtil.format(updateTime,DatePattern.NORM_DATETIME_FORMATTER);
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", id=").append(id);
        sb.append(", normNo").append(normNo);
        sb.append(", normName=").append(normName);
        sb.append(", issuingInstitution=").append(issuingInstitution);
        sb.append(", issuingTime").append(issuingTime);
        sb.append(", implementTime=").append(implementTime);
        sb.append(", effectiveTime=").append(effectiveTime);
        sb.append(", normType=").append(normType);
        sb.append(", fieldUse=").append(fieldUse);
        sb.append(", normStatus=").append(normStatus);
        sb.append(", normCoverUrl").append(normCoverUrl);
        sb.append(", normFileUrl=").append(normFileUrl);
        sb.append(", pageView=").append(pageView);
        sb.append(", enable=").append(enable);
        sb.append(", createUser").append(createUser);
        sb.append(", createTime=").append(createTime);
        sb.append(", updateUser=").append(updateUser);
        sb.append(", updateTime").append(updateTime);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}
